# 自动存款机存取模拟效果


# 定义一个用于存放用户信息的列表变量
userlist = [
    {'卡号': '001', '姓名': '李栀', '密码': '2245', '余额': '1000'},
    {'卡号': '002', '姓名': '张三', '密码': '2246', '余额': '1000'},
    {'卡号': '003', '姓名': '王五', '密码': '2247', '余额': '1000'}]

while True:
    # 输出初始界面
    print("=" * 12, "自主取款系统", "=" * 14)
    print("{0:1} {1:15}".format("1. 登录系统", "2. 退出系统"))
    print("=" * 40)
    key = input("请输入你要进行的操作：")
    # 根据键盘值，判断并执行对应的操作
    if key == "1":
        print("=" * 12, "用户登录", "=" * 14)
        idNumber = input("请输入您的卡号：")
        code = input("请输入您的密码：")
        i = eval(list(idNumber)[2])
        if idNumber == userlist[i-1]["卡号"] and code == userlist[i-1]["密码"]:
            print("|{0:<5}| {1:<10}| {2:<5}|".format("卡号", "姓名", "余额"))
            print("|{0:<7}| {1:<10}| {2:<7}|".format(userlist[i-1]['卡号'], userlist[i-1]['姓名'], userlist[i-1]['余额']))
            print("{0:1} {1:15}".format("3. 存款", "4. 取款"))
            step=input("请输入接下来您要进行的操作：")
            if step == "3":
                money = eval(input("请输入你要存入的钱数（100的整数倍）："))
                userlist[i]["余额"] = eval(userlist[i]["余额"]) + money
                print("{}:{}".format("当前余额为", userlist[i]["余额"]))
            if step == "4":
                money = eval(input("请输入你要取出的钱数（100的整数倍）："))
                userlist[i]["余额"] = eval(userlist[i]["余额"]) - money
                print("{}:{}".format("当前余额为", userlist[i]["余额"]))
        input("请输入回车键继续：")


    if key == "2":
	    print("="*12,"再见","="*14)
	    break
    else:
	    print("======== 无效的键盘输入！ ==========")
